A Formal Semantics for Sisal Arrays
نویسندگان
چکیده
We present a formal deenition of the dynamic semantics of arrays in the functional language Sisal 2.0. We adopt a logical setting: the structural operational style of Natural Semantics, using the Typol inference rules within the Centaur system, a generic programming environment. From the formal speciications, a development and visualization environment for Sisal programming is generated. This semantic deenition should allow for a precise comparison of array facilities in similar languages. Moreover, this work is the basis for a formal description of program transformations (e.g. parallelizations) which are crucial in the compilation techniques of functional languages such as Sisal.
منابع مشابه
A Formal Semantics and an Interactive Environment for Sisal
We present a formal deenition of the dynamic semantics of a signiicant part of the language Sisal 2.0 in the structural operational style of Natural Semantics, using Ty-pol inference rules within the Centaur system, a generic speciication environment. Sisal is a strongly typed, applicative, single assignment language in use on a variety of parallel processors, including conventional multiproces...
متن کاملFrom a formal dynamic semantics of Sisal to a Sisal environment
We present a forud defiuitiou of the dymmic semautics of a siguificaut part of the la~lguage Sisal 2.0 in the struc%ural operathud style of Natural Seulantics [6]! m.mely Typo1 inference rules [3]? with the &Itaur system [2]? a generic specification euvirounent. Sisal (Streams ad Iteratiou iu a Siugle Assigumeut La~~guage) ia a 8trmgly typed, applicative, siugle assiguuieut language iu use ou i...
متن کاملImplicit Array Copying : Prevention is Better than
SISAL is a purely functional language which supports arrays. The diiculty with supporting purely functional arrays is that a prohibitive amount of copying can be necessary. SISAL uses a sophisticated compile-time analysis to alleviate some copying associated with array operations. This compile-time analysis is discussed and some problems with it are exposed. The alternative to curing copying, i...
متن کاملOptimizing Sisal Programs: A Formal Approach
We formally describe optimization techniques for the comm pilation of the language Sisal 2.0. More precisely, we translate Sisal programs into data-ow IF1 graphs and optimize these graphs. An inn teractive visualization environment for IF1 graphs is also provided.
متن کاملOn Programming Scientific Applications in SAC - A Functional Language Extended by a Subsystem for High-Level Array Operations
This paper discusses some of the pros and cons of extending a simple functional language called Sac (for Single Assignment C) by array operations similar to those that are available in Apl. The array operations in Sac are based on the-calculus, an algebra of arrays which provides a formalism for specifying and simplifying array operations in terms of index set manipulations. The programming tec...
متن کامل